package org.aspectsense.middleware.controller;

public final class AdaptationManager {

	//---------Thread-safe Singleton For Ensuring single instantiation of Repository
	public final static AdaptationManager INSTANCE = new AdaptationManager();
	private AdaptationManager()
	{
		// Exists only to defeat instantiation.
	}
	//---------------------------------------

	public enum EVENT_TYPE {SERVICE_REG, SERVICE_UNREG}
	public static void notify (EVENT_TYPE type, Object from)
	{
		switch (type){
		
			case SERVICE_REG:
				evaluateComponents ();
				break;
			default: System.out.println("Invalid month.");break;
        }

	}
		
	/**
	 * Begin from end-user components and try to
	 * resolve components that participate in a service provision chain.
	 * Components not participating in any chain should remain unresolved
	 */
	public static void evaluateComponents ()
	{
		//Retrieve installed components from the Repository
	}
	
	
}
